1
아키텍처 패러다임: 보른 마이어너 대 하버드
AI021Lesson 3
00:00

계산 시스템의 기초 설계는 처리 단위(처리기)와 메모리 간의 관계에 의해 결정됩니다. 주요 차이는 명령어와 데이터가 공통 경로를 공유하는지, 아니면 독립적인 채널을 사용하는지에 있습니다.

1. 보른 마이어너 아키텍처

일반 목적 시스템인 x86-64에서 사용되며, 이 모델은 통합된 메모리 공간을 특징으로 합니다. CPU는 하나의 버스를 통해 코드와 데이터를 모두 접근하게 되어, 보른 마이어너 병목 현상이라고 불리는 지연이 발생합니다. 이는 명령어를 가져오고 연산자에 접근할 때 버스를 다중화해야 하는 경우 발생합니다.

2. 하버드 아키텍처

특수 목적 처리기와 ARMv8-A L1 캐시 구현에서 흔히 사용되며, 이 설계는 물리적으로 분리된 메모리 저장소와 신호 경로를 사용합니다. 이를 통해 명령어와 데이터 연산자를 동시에 가져올 수 있어 처리량이 크게 증가합니다.

CPU메모리통합 공유 버스 (병목)

흐름도: 보른 마이어너 아키텍처의 메모리 가져오기 사이클을 보여주는 순차적 버스 활용 방식.

3. 구조적 융합

현대 고성능 컴퓨팅(HPC) 시스템은 종종 수정된 하버드 아키텍처를 사용합니다. 이는 주 메모리에서 프로그래밍 유연성을 위해 보른 마이어너 모델을 유지하면서, L1 캐시 레벨에서 명령어 캐시와 데이터 캐시를 분리하여 하버드 방식처럼 작동함으로써 속도를 극대화합니다.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>